package models

import "github.com/shopspring/decimal"

// 商品表
type MShopProduct struct {
	ID            int             `gorm:"type:int(10); primaryKey" json:"id"`
	Aid           int             `json:"aid"`                                   //账户ID
	Bid           int             `json:"bid"`                                   //商户ID
	CateId        int             `gorm:"type:int(10);" json:"cate_id"`          //栏目id
	CateId2       int             `gorm:"type:int(10);" json:"cate_id2"`         //栏目id2
	CateId3       int             `gorm:"type:int(10);" json:"cate_id3"`         //栏目id3
	CateId4       int             `gorm:"type:int(10);" json:"cate_id4"`         //栏目id4
	CateId5       int             `gorm:"type:int(10);" json:"cate_id5"`         //栏目id5
	CateId6       int             `gorm:"type:int(10);" json:"cate_id6"`         //栏目id6
	Gid           int             `gorm:"type:int(10);" json:"gid"`              //分组ID
	Gid1          int             `gorm:"type:int(10);" json:"gid1"`             //分组ID1
	Gid2          int             `gorm:"type:int(10);" json:"gid2"`             //分组ID2
	Gid3          int             `gorm:"type:int(10);" json:"gid3"`             //分组ID3
	Gid4          int             `gorm:"type:int(10);" json:"gid4"`             //分组ID4
	Gid5          int             `gorm:"type:int(10);" json:"gid5"`             //分组ID5
	Gid6          int             `gorm:"type:int(10);" json:"gid6"`             //分组ID6
	Name          string          `gorm:"type:varchar(255);" json:"name"`        //商品名称
	SubName       string          `gorm:"type:varchar(255);" json:"sub_name"`    //商品副名称
	Pic           string          `gorm:"type:varchar(255);" json:"pic"`         //商品主图
	Pics          string          `gorm:"type:varchar(255);" json:"pics"`        //商品图片
	Sales         int             `gorm:"type:int(10);" json:"sales"`            //已售数量
	Detail        string          `gorm:"type:varchar(2555);" json:"detail"`     //商品详情
	MarketPrice   decimal.Decimal `json:"market_price"`                          //市场价
	SellPrice     decimal.Decimal `json:"sell_price"`                            //销售价
	CostPrice     decimal.Decimal `json:"cost_price"`                            //成本价
	Givescore     int             `json:"givescore"`                             //购买赠送积分
	Weight        int             `json:"weight"`                                //重量
	Stock         int             `json:"stock"`                                 //库存
	Guigedata     string          `gorm:"type:varchar(2555);" json:"guigedata"`  //规格数据
	Freighttype   int             `gorm:"type:int(10);" json:"freighttype"`      //配送方式 1全部模板 0指定模板 3自动发货 4在线卡密
	Freightdata   string          `gorm:"type:varchar(255);" json:"freightdata"` //指定模板时的配送模板ID 多个逗号分割
	Scoredkmaxset int             `json:"scoredkmaxset"`                         //积分抵扣设置 0按照系统设置抵扣 1单独设置抵扣比例 2单独设置抵扣金额 -1不可用积分抵扣
	Scoredkmaxval decimal.Decimal `json:"scoredkmaxval"`                         //积分抵扣时最多抵扣多少
	Sort          int             `gorm:"type:int(10);" json:"sort"`             //排序
	Status        int             `gorm:"type:int(10);" json:"status"`           //状态0未上架1已上架
	TjProid       string          `gorm:"type:varchar(255);" json:"tj_proid"`    //推荐商品
	Type          int             `json:"type"`                                  //商品类型 1:服务 2：实物
	Tag           string          `json:"tag"`                                   //标签
	CreatedAt     int             `gorm:"type:int(10);" json:"created_at"`
	UpdatedAt     int             `gorm:"type:int(10);" json:"updated_at"`
}

func (table *MShopProduct) TableName() string {
	return "m_shop_product"
}

// 商品分类
type MShopCategory struct {
	ID         int    `gorm:"type:int(11); primaryKey" json:"id"`
	Aid        int    `gorm:"type:int(11);" json:"aid"` //商户id
	Pid        int    `gorm:"type:int(11);" json:"pid"` //上级分类ID
	Type       int    `json:"type"`                     //1:服务商品 2:普通商品
	Name       string `json:"name"`                     //分类名称
	Pic        string `json:"pic"`                      //分类图片
	Status     int    `json:"status"`                   //状态0关闭1开启
	Sort       int    `json:"sort"`                     //排序 越大越靠前
	Showtj     string `json:"showtj"`                   //
	Createtime int    `json:"createtime"`               //创建时间
	StartHours string `json:"start_hours"`              //
	EndHours   string `json:"end_hours"`                //
	Banner     string `json:"banner"`                   //
	FromId     int    `json:"from_id"`                  //
	SubName    string `json:"sub_name"`                 //副标题
}

func (table *MShopCategory) TableName() string {
	return "m_shop_category"
}

// 商品分组
type MShopGroup struct {
	ID         int    `json:"id"`
	Aid        int    `json:"aid"`        //账户ID
	Name       string `json:"name"`       //名称
	SubName    string `json:"sub_name"`   //副标题
	Pic        string `json:"pic"`        //图片
	Type       int    `json:"type"`       //1:服务商品 2:普通商品
	Status     int    `json:"status"`     //状态
	Sort       int    `json:"sort"`       //序号
	Createtime int    `json:"createtime"` //
	FromId     int    `json:"from_id"`    //
	IsRow      int    `json:"is_row"`     //排列 方式  1：火 2：横排
	Banner     string `json:"banner"`     //
}

func (table *MShopGroup) TableName() string {
	return "m_shop_group"
}

// 规格表
type MShopGuige struct {
	ID          int             `json:"id"`
	Aid         int             `json:"aid"`          //账户ID
	Bid         int             `json:"bid"`          //
	Proid       int             `json:"proid"`        //商品ID
	Name        string          `json:"name"`         //规格名称
	Pic         string          `json:"pic"`          //规格图片
	MarketPrice decimal.Decimal `json:"market_price"` //市场价
	CostPrice   decimal.Decimal `json:"cost_price"`   //成本价
	SellPrice   decimal.Decimal `json:"sell_price"`   //销售价
	Weight      int             `json:"weight"`       //重量
	Stock       int             `json:"stock"`        //库存
	Procode     string          `json:"procode"`      //编码
	Sales       int             `json:"sales"`        //已售数量
	Ks          string          `json:"ks"`           //规格结构
	LvpriceData string          `json:"lvprice_data"` //开启会员价时各个会员等级的价格数据
	Givescore   int             `json:"givescore"`    //购买给多少积分
	LimitStart  int             `json:"limit_start"`  //已售数量
	Barcode     string          `json:"barcode"`      //规格条形码编号
	FromId      int             `json:"from_id"`      //已售数量
}

func (table *MShopGuige) TableName() string {
	return "m_shop_guige"
}

// 物流模版
type MFreight struct {
	ID               int             `json:"id"`
	Aid              int             `json:"aid"`               //账户ID
	Bid              int             `json:"bid"`               //商户ID
	Pstype           int             `json:"pstype"`            //0快递 1自提 2同城配送
	Name             string          `json:"name"`              //
	Type             int             `json:"type"`              //1按重量 2按件数
	Pricedata        string          `json:"pricedata"`         //区域价格
	Storetype        int             `json:"storetype"`         //自提门店 0全部 1选择
	Storeids         int             `json:"storeids"`          //门店id
	Status           int             `json:"status"`            //状态 1开启
	Sort             int             `json:"sort"`              //
	FreePrice        decimal.Decimal `json:"free_price"`        //满额包邮的金额
	Freeset          int             `json:"freeset"`           //满额包邮
	Pstimeset        int             `json:"pstimeset"`         //是否开启配送时间选择
	Pstimedata       string          `json:"pstimedata"`        //配送时间设置
	Psprehour        int             `json:"psprehour"`         //选择配送时间y要大于当前时间多少小时
	Createtime       int             `json:"createtime"`        //
	PeisongJuli1     float64         `json:"peisong_juli1"`     //
	PeisongFee1      float64         `json:"peisong_fee1"`      //
	PeisongJuli2     float64         `json:"peisong_juli2"`     //
	PeisongFee2      float64         `json:"peisong_fee2"`      //
	PeisongLng       string          `json:"peisong_lng"`       //
	PeisongLat       string          `json:"peisong_lat"`       //
	PeisongRange     int             `json:"peisong_range"`     //
	FieldList        string          `json:"field_list"`        //
	Pscontenttype    int             `json:"pscontenttype"`     //发货信息 0:固定信息 1:不固定信息(在线卡密)
	Pscontent        string          `json:"pscontent"`         //
	Needlinkinfo     int             `json:"needlinkinfo"`      //
	Minpriceset      int             `json:"minpriceset"`       //满额起送
	Minprice         decimal.Decimal `json:"minprice"`          //起送金额
	Minnumset        int             `json:"minnumset"`         //满件起送
	Minnum           int             `json:"minnum"`            //起送件数
	Fwprice          decimal.Decimal `json:"fwprice"`           //
	PeisongRangetype int             `json:"peisong_rangetype"` //
	PeisongRangepath string          `json:"peisong_rangepath"` //
	Formdata         string          `json:"formdata"`          //
	PeisongLng2      string          `json:"peisong_lng2"`      //
	PeisongLat2      string          `json:"peisong_lat2"`      //
	Hxbids           string          `json:"hxbids"`            //
	SubName          string          `json:"sub_name"`          //
}

func (table *MFreight) TableName() string {
	return "m_freight"
}
